↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PrologToPiTRSProof
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
SUBLIST_IN_GA(Xs, Ys) → U1_GA(Xs, Ys, app_in_aaa(X, Zs, Ys))
SUBLIST_IN_GA(Xs, Ys) → APP_IN_AAA(X, Zs, Ys)
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → U3_AAA(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_GA(Xs, Ys, app_in_gaa(Xs, X1, Zs))
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → APP_IN_GAA(Xs, X1, Zs)
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PrologToPiTRSProof
SUBLIST_IN_GA(Xs, Ys) → U1_GA(Xs, Ys, app_in_aaa(X, Zs, Ys))
SUBLIST_IN_GA(Xs, Ys) → APP_IN_AAA(X, Zs, Ys)
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → U3_AAA(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_GA(Xs, Ys, app_in_gaa(Xs, X1, Zs))
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → APP_IN_GAA(Xs, X1, Zs)
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PrologToPiTRSProof
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PiDP
↳ PrologToPiTRSProof
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
↳ PiDP
↳ PrologToPiTRSProof
APP_IN_GAA(.(X, Xs)) → APP_IN_GAA(Xs)
From the DPs we obtained the following set of size-change graphs:
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PrologToPiTRSProof
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
↳ PrologToPiTRSProof
APP_IN_AAA → APP_IN_AAA
APP_IN_AAA → APP_IN_AAA
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
SUBLIST_IN_GA(Xs, Ys) → U1_GA(Xs, Ys, app_in_aaa(X, Zs, Ys))
SUBLIST_IN_GA(Xs, Ys) → APP_IN_AAA(X, Zs, Ys)
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → U3_AAA(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_GA(Xs, Ys, app_in_gaa(Xs, X1, Zs))
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → APP_IN_GAA(Xs, X1, Zs)
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
SUBLIST_IN_GA(Xs, Ys) → U1_GA(Xs, Ys, app_in_aaa(X, Zs, Ys))
SUBLIST_IN_GA(Xs, Ys) → APP_IN_AAA(X, Zs, Ys)
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → U3_AAA(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_GA(Xs, Ys, app_in_gaa(Xs, X1, Zs))
U1_GA(Xs, Ys, app_out_aaa(X, Zs, Ys)) → APP_IN_GAA(Xs, X1, Zs)
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → U3_GAA(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PiDP
APP_IN_GAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_GAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ QDPSizeChangeProof
↳ PiDP
APP_IN_GAA(.(X, Xs)) → APP_IN_GAA(Xs)
From the DPs we obtained the following set of size-change graphs:
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
sublist_in_ga(Xs, Ys) → U1_ga(Xs, Ys, app_in_aaa(X, Zs, Ys))
app_in_aaa([], X, X) → app_out_aaa([], X, X)
app_in_aaa(.(X, Xs), Ys, .(X, Zs)) → U3_aaa(X, Xs, Ys, Zs, app_in_aaa(Xs, Ys, Zs))
U3_aaa(X, Xs, Ys, Zs, app_out_aaa(Xs, Ys, Zs)) → app_out_aaa(.(X, Xs), Ys, .(X, Zs))
U1_ga(Xs, Ys, app_out_aaa(X, Zs, Ys)) → U2_ga(Xs, Ys, app_in_gaa(Xs, X1, Zs))
app_in_gaa([], X, X) → app_out_gaa([], X, X)
app_in_gaa(.(X, Xs), Ys, .(X, Zs)) → U3_gaa(X, Xs, Ys, Zs, app_in_gaa(Xs, Ys, Zs))
U3_gaa(X, Xs, Ys, Zs, app_out_gaa(Xs, Ys, Zs)) → app_out_gaa(.(X, Xs), Ys, .(X, Zs))
U2_ga(Xs, Ys, app_out_gaa(Xs, X1, Zs)) → sublist_out_ga(Xs, Ys)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
APP_IN_AAA(.(X, Xs), Ys, .(X, Zs)) → APP_IN_AAA(Xs, Ys, Zs)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ AND
↳ PiDP
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
APP_IN_AAA → APP_IN_AAA
APP_IN_AAA → APP_IN_AAA